ChuWiki 2.0
Renderer = wiki2xhtml
Ce matin je reçois un e-mail d'un ami qui me dit que mon site est tout cassé. Je me rends donc à son adresse avec mon navigateur préféré (Opera) et ne constate rien d'anormal.
J'ouvre alors ce même site avec Iceweasel (alias Firefox) et là effectivement j'ai le messages d'erreur suivant:
Erreur d'analyse XML : balise ne correspondant pas. Attendu : </link>. Emplacement : http://99max.net/Linux/wiki/Accueil Numéro de ligne 12, Colonne 3 : </head> --^
La ligne "Erreur d'analyse XML : balise ne correspondant pas. Attendu : </link>." me met la puce à l'oreille. Il y a quelques jours j'ai "enjolivé" mes titres de nouvelles polices en utilisant le service Google webfonts. Pour ce faire j'ai du ajouter quelques lignes à mon fichier "theme.php" comme ceci:
... WriteLine('<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Mouse+Memoirs">'); WriteLine('<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Denk+One">'); ...
J'efface ces lignes et après rechargement de la page celle-ci s'affiche correctement (ouf): problème identifié!
Si on analyse un peu la ligne "Erreur d'analyse XML : balise ne correspondant pas. Attendu : </link>." on comprend que le moteur xml attendait une balise de fermeture "<\link>" qu'il n'a pas trouvé. Hé oui, en y regardant de plus près, les liens css dans les "WriteLine()" n'ont pas de balise de fermeture.
Pour corriger le problème il suffira de les écrire comme ça:
WriteLine('<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Mouse+Memoirs" />'); WriteLine('<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Denk+One" />');
ou comme ça
WriteLine('<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Mouse+Memoirs"></link>'); WriteLine('<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Denk+One"></link>');